 root {
     padding: 0;
     margin: 0;
     box-sizing: border-box;
 }

 html {
     position: relative;
     height: 100%;
     overflow: auto;
     -webkit-overflow-scrolling: touch;
 }

 body {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     display: flex;
     flex-direction: column;
     overflow: hidden scroll;
     -webkit-overflow-scrolling: touch;
     overscroll-behavior: none;
 }

 #sidebar {
     position: fixed;
     text-align: center;
     width: 30px;
     top: 0;
     bottom: 0;
     right: 15px;
     overflow: hidden;
     background: #fff;
     z-index: 100;
     padding: 0px;
     border: 1px solid #ddd;
 }

 #sidebar:hover {
     z-index: 100;
     overflow: auto;
     text-align: left;
     width: 400px !important;
     bottom: 0;
     top: 0;
     right: 0;
 }

 #sidebar:click {
     z-index: 100;
     overflow: auto;
     width: 400px !important;
     top: 0;
     bottom: 0;
     right: 0;
 }

 #sidebar h1 {
     font-size: 16px;
 }

 #doc_index {
     padding-left: 0;
 }

 #outpane {
     position: revert;
     z-index: 90;
     padding: 0 30px 0 10px;
     -webkit-overflow-scrolling: touch;
 }